//
//  Status.swift
//  Weibo
//
//  Created by 5201-mac on 2017/4/19.
//  Copyright © 2017年 wlb-mac. All rights reserved.
//

import UIKit

class Status: NSObject {
    
    ///唯一的微博记录
    //64位的整型数据
    //Int 和 OC 中 NSInteger:会根据不同的系统位数来对应最大的整型长度
    //在32位（4，4s，5，5c）的机型上面就是32的，在64位（5s之后的都是64位）的机型上面就是64位的
    var id: Int64 = 0
    
    ///微博正文
    var text: String?
    
    ///微博来源
    var source: String?
    
    ///微博创建时间
    var created_at: String?
    
    var  user: User?
    
    /*图片显示的逻辑
     最多只能发布九张图片
     四张图片必须是显示两行，每行显示2张
     其他的多张图片就以 3*n的形式显示
    */
    var pic_urls: [PictureItem]?
    
    
    
    init(dict: [String: NSObject]) {
        super.init()
        setValuesForKeys(dict)
    }
    
    override func setValue(_ value: Any?, forKey key: String) {
        if key == "user" {
            //将user字典转模型
            user = User(dict: value as! [String: NSObject])
            return
        }
        
        if key == "pic_urls" {
            //将字典数组转换成模型数组
            var array = [PictureItem]()
            for item in value as! [[String: String]] {
                let pic = PictureItem(dict: item)
                array.append(pic)
            }
            //给属性赋值
            pic_urls = array
            //return 一定要加！！！
            return
        }
        super.setValue(value, forKey: key)
    }
    
    override func setValue(_ value: Any?, forUndefinedKey key: String) {
    }
}
